package org.example.mapstruct.common.annotation;

import org.mapstruct.Mapping;

import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;

@Retention(RetentionPolicy.CLASS)
// 目标对象的 id 字段将被忽略，不会从源对象中复制该字段的值。
@Mapping(target = "id", ignore = true)
// 在映射过程中，目标对象的 createTime 字段将被设置为当前日期和时间。
@Mapping(target = "createTime", expression = "java(new java.util.Date())")
// 在将源对象映射到目标对象时，源对象的 dept 字段将被映射到目标对象的 department 字段。
@Mapping(source = "dept", target = "department")
public @interface FromUserInfo {
}
